package Futbol_Liga;
/**
 * EMA bat da, bere barruan jarduera zerrenda osoa dago. Haren metodoak erabiliz liga hasieratuko dugu denboraldia hasi dezan. 
 * Hemendik pitxitxia lortu ahal dugu (ligan gol gehien sartu dituen jokalaria). 
 * Eta jardunaldiaren kiniela lortu ahalko dugu baita ere, honen data emanez (partidu guztien emaitzak; 1-x-2 motakoak).
 * @author Txantxangorriak
 *
 */
import java.io.FileNotFoundException;
import java.io.IOException;


public class Liga {
	
	private String denboraldia;
	private JardunaldiZerrenda jardunaldiak;
	private static Liga instantzia;
	
	/**
	 * metodo eraikitzailea
	 */
	private Liga(){
		denboraldia="2012-2013";
	}
	/**
	 * DMA bat denez, liga sortzen duen metodo estatikoa da
	 * @return Liga
	 */
	public static Liga getLiga() {
			if (instantzia==null){
				instantzia=new Liga();
			}
			return instantzia;
	}
	/**
	 * Metodo honekin liga hasieratu egingo da, aplikazioari hasiera emateko
	 * @throws IOException
	 */
	public void ligaHasieratu() throws IOException{
			
			TxtikLortu tx=new TxtikLortu();
			try {
				System.out.println("TALDEAK");
				tx.taldeakLortu();
				
				
			} catch (FileNotFoundException e) {
				
				e.printStackTrace();
			}
			try {
				System.out.println("JOKALARIAK");
				tx.jokalariakLortu();
			} catch (FileNotFoundException e) {
				
				e.printStackTrace();
			}
			
			System.out.println("Jardunaldiak Hasieratu");
			jardunaldiak=new JardunaldiZerrenda();
			jardunaldiak.jardunaldiakHasieratu();
			
			
			System.out.println("Simulatu");
			
			jardunaldiak.simulazioaEgin();

	}

	/**
	 * Ligako pitxitxia lortuko da metodo honekin, bere izen bueltatuz
	 * @return String
	 */
	public String lortuPitxitxia(){
			
			Jokalaria jokMax =jardunaldiak.pitxitxia();
			String jokIzena=jokMax.getIzena();
			
			return jokIzena;
	}
	/**
	 * 	Ligako denboraldia eguneratuko da metodo honekin
	 * @param pDenb
	 */
	public void denboraldiaEguneratu(String pDenb){
			denboraldia=pDenb;
	}

	/**
	 * Denboraldia bueltatuko da
	 * @return String
	 */
	public String getDenboraldia() {
			return denboraldia;
	}
	/**
	 * Jardunaldi zerrenda lortuko da metodo hau erabiliz
	 * @return JardunaldiZerrenda
	 */
	public JardunaldiZerrenda getJardunaldiak() {
			return jardunaldiak;
	}
	/**
	 * Data bat emanez jarduera horri dagokion data bueltatuko da
	 * @param pJarData
	 * @return Jardunaldia
	 */
	public Jardunaldia lortuJardunaldia(String pJarData) {
			
			return jardunaldiak.lortuJardunaldia(pJarData);
	}
	/**
	 * Data bat emanez, data horri dagokion kiniela inprimatuko da
	 * @param pData
	 * @return
	 */
	public String kiniela(String pData) {
			String kiniela=jardunaldiak.kiniela(pData);
			return kiniela;
	}


}
